﻿export interface ISysNotification {
  BillCode: string | null;
  ID?: string | null;
  Title: string | null;
  Content: string | null;
  RouteId: null;
  Route?: ISysBillRoute;
  CategoryId: null;
  Category?: ISysNotificationCategory;
  BusinessType: string | null;
  BusinessId: string | null;
  SenderName: string | null;
  ReceiverName: string | null;
  Status: '未读' | '已读';
  Priority: '低' | '普通' | '高' | '紧急';
  IsTop: boolean;
  SendTime: Date;
  ReadTime: Date | null;
}

export interface ISysNotificationVm {
  Entity: ISysNotification;
  ActionName?: string | null;
  IsMyApprove?: boolean | null;

}

export interface ISysNotificationView extends ISysNotification {

}

export interface ISysNotificationQuery {
  CategoryId?: string | null;
  Status?: string | null;
  Priority?: string | null;
  Limit?: number;
  Page?: number;

}


export interface ISysNotificationCategory {
  ID?: string | null;
  Name: string | null;
  Code: string | null;
  Description: string | null;
  Icon: string | null;
  EnableInternalMessage: boolean;
  EnableSms: boolean;
  EnableEmail: boolean;
  EnableAppPush: boolean;
  EnableWechatPush: boolean;
  EnableDingTalkPush: boolean;
  DefaultPriority: '低' | '普通' | '高' | '紧急';
  IsEnabled: boolean;
  SortOrder: number;
  ParentId: null;
  Parent?: ISysNotificationCategory;
}


export interface ISysBillRoute {
  ID?: string | null;
  Name: string | null;
  CodeType: string | null;
  PcRoute: string | null;
  MobileRoute: string | null;
}